﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using System.Diagnostics;
using System.ServiceModel;
using Teenusekiht;

public partial class _Default : System.Web.UI.Page
{
    private SessionData sesDat ;
    KohvikType[] kohvikud;

    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["sess"] == null) Session["sess"] = SessionStatic.CreateSession();
        sesDat = SessionStatic.GetData((int)Session["sess"]);

        IService1 sc = new ChannelFactory<IService1>("Serv").CreateChannel();
        kohvikud = sc.Kohvikud(Rakendus.RAKENDUSE_KOOD).ToArray();
        
        for (int i = 0; i < kohvikud.Length; i++)
        {
            ph_kohvikud.Controls.Add(new LiteralControl("<p>"));
            ph_kohvikud.Controls.Add(new HyperLink()
            {
                Text = kohvikud[i].KohvikuNimi,
                NavigateUrl = "~/Kohvik/Menu.aspx?kohvik=" + kohvikud[i].Kohviku_ID
            });
            ph_kohvikud.Controls.Add(new LiteralControl("</p> \n"));
        }

        sc.Dispose();

        tb_KohvikuNimetus.Focus();

        Debug.Print( Page.User.Identity.Name );  // kasutajanimi

    }

    protected void btn_Otsi_Click(object sender, EventArgs e)
    {
        string nimi = tb_KohvikuNimetus.Text;
        var kohvik = kohvikud.Where(k => k.KohvikuNimi == nimi);
        if (kohvik.Count() != 0)
        {
            int id = kohvik.First().Kohviku_ID;
            Response.Redirect("~/Kohvik/Menu.aspx?kohvik=" + id);
        }
        else lblCheck.Text = "Sellise nimega kohvikut pole registreeritud.";
    }

    [System.Web.Services.WebMethodAttribute(), System.Web.Script.Services.ScriptMethodAttribute()]
    public static string[] GetCompletionList(string prefixText, int count, string contextKey)
    {
        IService1 sc = new ChannelFactory<IService1>("Serv").CreateChannel();
        string[] nimed = sc.KohvikuteNimed(Rakendus.RAKENDUSE_KOOD);
        string[] autoComp = nimed.Where(n => n.ToLower().Contains(prefixText.ToLower())).ToArray();
        return autoComp;
    }

}
